In computers generally, the main memory, e.g., Random Access Memory (RAM), of a computer stores an operating system program during operation of the computer. Typically, the main memory is a volatile memory where the programs and data stored in the main memory are lost when the power to computer is cut off for whatever reason.
A computer may further comprise non-volatile storage devices, e.g., Read Only Memory (ROM), hard disk drive, floppy disk drives, configured to store an operating system program. There are two situations that require the transfer of the operating system program from a non-volatile storage device, e.g., hard disk drive, to a volatile storage device, e.g., RAM. One situation is when the computer is initially turned on. The second situation is when a malfunction in computer hardware or software causes the computer to become unresponsive to commands of a user. In both situations, the process of accessing the non-volatile storage device, e.g., hard disk drive, is commonly referred to as “booting.”
When the computer is initially turned on, a Basic Input Output System (BIOS) stored in a non-volatile storage device, e.g., ROM, is activated to invoke a series of system checks commonly referred to as power-on self-tests (POST). The POST checks the integrity of basic hardware components such as the main memory, the keyboard, any disk drives and other storage devices. The hardware configuration is checked to determine whether it matches the hardware specification entered by the user. The hardware configuration includes the type of keyboard, the number and types of data storage devices, and the amount of main memory available. If the hardware is determined to be functioning properly and the hardware configuration matches the specification entered by the user, the operating system is loaded from a non-volatile data storage device, e.g., hard disk drive, into the main memory.
Computers may further comprise a partition in a non-volatile data storage device, e.g., hard disk drive. The partition may store an original copy of the operating system files and the code to restore them in case of accidental corruption of the operating system program in the main memory.
The BIOS may “boot” to the partition to load the original copy of the operating system program into the main memory when the operating system program becomes damaged. When the operating system program becomes damaged, the computer will not operate properly until the BIOS boots to the partition to load the original copy of the operating system program into the main memory. Unfortunately, a local operator is required to boot to the hidden partition such as by manually pressing a key.
It would therefore be desirable to boot to a designated partition in a nonvolatile storage unit without requiring a local operator. It would further be desirable to boot to a designated partition in a non-volatile storage unit to conduct recovery/maintenance operations without requiring a local operator.